package avicit.bdp.dcs.plugin.kafka.param;

import avicit.bdp.dcs.plugin.BaseDataxParam;

import java.util.List;
import java.util.Map;

/**
 * @金航数码科技有限责任公司
 * @作者：liyb
 * @邮箱：liyb@avic-digital.com
 * @创建时间： 2021-01-27 18:23
 * @类说明：用于传参，构建json
 * @修改记录：
 */
public class KafkaDataxParam extends BaseDataxParam {

    // kafka地址和端口
    private String bootstrapServers;

    // kafka消费者组
    private String groupId;

    /**
     * Kafka消费者消费模式，包括earliest、latest、none三种。
     */
    private String autoOffestRest;

    // kafka主题
    private String kafkaTopic;

    private String msgId;

    private String msgSerializeType;

    private String kafkaPartitions;

    private String company;

    private List<KafkaParam> paras;

    public static class KafkaParam {

        private Map<String, Object> deviceId;
        // 列名
        private List<Map<String, Object>> column;

        public Map<String, Object> getDeviceId() {
            return deviceId;
        }

        public void setDeviceId(Map<String, Object> deviceId) {
            this.deviceId = deviceId;
        }

        public List<Map<String, Object>> getColumn() {
            return column;
        }

        public void setColumn(List<Map<String, Object>> column) {
            this.column = column;
        }

    }

    public String getBootstrapServers() {
        return bootstrapServers;
    }

    public void setBootstrapServers(String bootstrapServers) {
        this.bootstrapServers = bootstrapServers;
    }

    public String getGroupId() {
        return groupId;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }

    public String getAutoOffestRest() {
        return autoOffestRest;
    }

    public void setAutoOffestRest(String autoOffestRest) {
        this.autoOffestRest = autoOffestRest;
    }

    public String getKafkaTopic() {
        return kafkaTopic;
    }

    public void setKafkaTopic(String kafkaTopic) {
        this.kafkaTopic = kafkaTopic;
    }

    public String getMsgId() {
        return msgId;
    }

    public void setMsgId(String msgId) {
        this.msgId = msgId;
    }

    public String getMsgSerializeType() {
        return msgSerializeType;
    }

    public void setMsgSerializeType(String msgSerializeType) {
        this.msgSerializeType = msgSerializeType;
    }

    public List<KafkaParam> getParas() {
        return paras;
    }

    public void setParas(List<KafkaParam> paras) {
        this.paras = paras;
    }

    public String getKafkaPartitions() {
        return kafkaPartitions;
    }

    public void setKafkaPartitions(String kafkaPartitions) {
        this.kafkaPartitions = kafkaPartitions;
    }

    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

}
